{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "39cc5b1e",
   "metadata": {},
   "source": [
    "# The `hub` submodule"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6cec2944",
   "metadata": {},
   "source": [
    "The `hub` submodule within `arcgis.apps` acts as the pythonic interface to [ArcGIS Hub](https://www.esri.com/en-us/arcgis/products/arcgis-hub/overview). It enables automation of several Hub workflows and simplifies the use of the Hub information model by allowing access to Hub objects such as `Initiative`, `Event`, `Site` and `Page`. For tutorials and additional resources on using ArcGIS Hub, see [here](https://www.esri.com/en-us/arcgis/products/arcgis-hub/resources).\n",
    "\n",
    "ArcGIS Hub is available with ArcGIS Online in Hub Basic and Hub Premium, depending on your licensing of Hub. Every user of ArcGIS Online has access to Hub Basic, unless upgraded to Hub Premium at the Organization level. Users of ArcGIS Enterprise have access to [ArcGIS Enterprise Sites](https://enterprise.arcgis.com/en/sites/latest/get-started/about-this-application.htm) which enables users to automate several workflows involving Sites and Pages, similar to Hub Basic. Once you sign-in to your `GIS`, you can access the Hub capabilities in ArcGIS Online through `gis.hub`, which is the entry point to Hub. As an Enterprise Sites user, the entry point is `gis.sites` to access your Sites and Pages in ArcGIS Enterprise. Let's explore this through the architecture diagrams below.\n",
    "\n",
    "\n",
    "\n",
    "## Architecture Diagram\n",
    "\n",
    "\n",
    "![image](https://user-images.githubusercontent.com/13968196/213733145-2f5747e9-4555-4440-a2f2-3b3a13608ec8.png)\n",
    "\n",
    "\n",
    "\n",
    "The capabilities supported in the API both match and exceed those available in Hub's UI. It equips users with tools necessary for working with the Sites in their Hub or Enterprise organization. With it, you can create, search for, edit the layout of, and clone sites and pages within the same organization and to different organizations. \n",
    "\n",
    "You can learn more about the functionality supported through the classes in the hub submodule through the links below:\n",
    "* [Hub](/python/api-reference/arcgis.apps.hub.html#hub): Represents a Hub organization\n",
    "* [Initiative](/python/api-reference/arcgis.apps.hub.html#initiative): Represents a Hub Premium Initiative\n",
    "* [Site](/python/api-reference/arcgis.apps.hub.html#site): Represents a Hub or Enterprise Site\n",
    "* [Page](/python/api-reference/arcgis.apps.hub.html#page): Represents a Page of a Hub or Enterprise Site\n",
    "* [Event](/python/api-reference/arcgis.apps.hub.html#event): Represents a Hub Premium Event\n",
    "* Resource Manager classes for managing these objects above:\n",
    "    * [InitiativeManager](/python/api-reference/arcgis.apps.hub.html#initiativemanager): To manage initiatives\n",
    "    * [SiteManager](/python/api-reference/arcgis.apps.hub.html#sitemanager): To manage sites\n",
    "    * [PageManager](/python/api-reference/arcgis.apps.hub.html#pagemanager): To manage pages\n",
    "    * [EventManager](/python/api-reference/arcgis.apps.hub.html#eventmanager): To manage events\n",
    "    \n",
    "We have three more guides that cover a range of functionality, also split based on Hub type.\n",
    "* [Hub Premium](../hub-for-guide-premium): Working with Initiatives and Events\n",
    "* [Hub Basic](../hub-for-guide-basic): Adding site and page, cloning the site to Hub Premium + Basic + Enterprise, Linking and unlinking pages\n",
    "* [Enterprise Sites](../enterprise-sites): Adding site with custom domain, adding page, editing site layout and theme, editing page layout"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e11bafd0",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
